perm filename TEXTER.FAI[REV,MUS] blob sn#231747 filedate 1977-05-24 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	TITLE	TEXTER
C00006 ENDMK
C⊗;
TITLE	TEXTER

;AC's
A←1 ↔ L←2

;Line characteristics
DDDLIN←←20000
IIILIN←←400000

DEFINE CW(C1,B1,C2,B2,C3,B3) <
	<BYTE (8)<B1>,<B2>,<B3> (3)<C1>,<C2>,<C3>>!4
>

;Command names for DD command bytes
EXCT←←0;			Execute
FNCN←←1 ALPHBG←←6 ALPHA←←46;	Function
CHNL←←2;			Channel select
COLM←←3;			Column select
HILIN←←4;			Set high 5 bits of line address
LOLIN←←5			Set low 4 bits of line address

DISPLA:	TDZA
	SETO
	RESET
	SETO	L,
	GETLIN	L
	AOJE	L,[EXIT]
	TLNN	L,DDDLIN!IIILIN
	JRST	[OUTSTR [ASCIZ /NOT A DPY!/]↔EXIT]

	PPSEL	1
	DPYPOS	-500
	DPYSIZ	3002
	JUMPL	L,DOIII
	DDUPG	[[CW FNCN,17,CHNL,0,FNCN,ALPHA↔0]↔2]
	MOVE	A,[CW FNCN,ALPHA,CHNL,0,FNCN,ALPHA]

	MOVEM	A,DPPROG
	SKIPA	A,[CW COLM,2,HILIN,2,LOLIN,4]

DOIII:	MOVE	A,[BYTE (11)<-714>,700 (3)2,2 (2)1,2 (4)6];640
	MOVEM	A,DPPROG+1

	UPGIOT	1,DPHEAD

	JUMPL	L,DOIII2
	UPGIOT	DDDHDR
	JRST    FINISH

DOIII2:	UPGIOT	2,IIIHDR
FINISH:	OUTSTR	[ASCIZ /THE END/]
	EXIT	1,
	EXIT

DPHEAD:	200000,,DPPROG
	DPLEN
	0
	DPPROG+1

DPPROG:	BLOCK	2
	ASCID	/This is a whole bunch of text
for this program to put out on the display.
It should work on BOTH
the III's
	AND
the Data Disks.
/
	0
DPLEN←←.-DPPROG

DDDHDR:	DDDVEC
	LDDVEC

DDDVEC:	CW FNCN,27,CHNL,0,FNCN,27
	CW COLM,1,HILIN,27,LOLIN,0
REPEAT	=13,<
	BYTE (8)377,377,377,377 (4)2
>
	CW EXCT,0,FNCN,27,FNCN,27
	0
LDDVEC←←.-DDDVEC

IIIHDR:	IIIVEC
	LIIVEC

IIIVEC:	0
	BYTE (11)<-777>,<-400> (3)2,3 (2)1,2 (4)6
	BYTE (11)  1777,0      (3)2,3 (2)0,0 (4)6
	BYTE (11)<-777>,<-300> (3)2,3 (2)1,2 (4)6
	BYTE (11)  1777,0      (3)2,3 (2)0,0 (4)6
	BYTE (11)<-777>,<-200> (3)2,3 (2)1,2 (4)6
	BYTE (11)  1777,0      (3)2,3 (2)0,0 (4)6
	BYTE (11)<-777>,<-100> (3)2,3 (2)1,2 (4)6
	BYTE (11)  1777,0      (3)2,3 (2)0,0 (4)6
	BYTE (11)<-777>,< 100> (3)2,3 (2)1,2 (4)6
	BYTE (11)  1777,0      (3)2,3 (2)0,0 (4)6
	BYTE (11)<-777>,< 300> (3)2,3 (2)1,2 (4)6
	BYTE (11)  1777,0      (3)2,3 (2)0,0 (4)6
	BYTE (11)<-777>,< 500> (3)2,3 (2)1,2 (4)6
	BYTE (11)  1777,0      (3)2,3 (2)0,0 (4)6
LIIVEC←←.-IIIVEC

	END	DISPLA